iT邦幫忙

2024 iThome 鐵人賽

DAY 4
0

接下來是Windows的IDA使用方式,在這次的操作中,使用IDA Free就可以達成所需要的目的了。
一開始將程式丟進去之後,會是一個方塊狀的分析圖。
https://ithelp.ithome.com.tw/upload/images/20240918/20169016iyAxvmoKdX.png

如果有條件轉跳也會在這個地方呈現。
https://ithelp.ithome.com.tw/upload/images/20240918/20169016yiEEOIMX6j.png

空白鍵可以切換Text或Block模式。
https://ithelp.ithome.com.tw/upload/images/20240918/20169016UWrMouQ7dm.png

快速點擊左方的function name可以快速的轉跳到想看到的Function內容。
https://ithelp.ithome.com.tw/upload/images/20240918/20169016cWkXPs626G.png

在Imports分頁可以看到這個程式使用了哪些Library。
https://ithelp.ithome.com.tw/upload/images/20240918/20169016bZWnf8FKu5.png

還有很多功能,IDA是一個很直觀的圖形化介面,相信各位未來熟悉反編譯後只要摸一摸很快就能夠理解!
接著就要說到比較重要的Debugger功能,這是一個動態反編譯的功能。
首先要說的是Break point,就是設定節點,在希望程式暫停的地方按下左方的藍色小圈圈,當它變成紅色就表示成功了,未來在執行程式時,只要遇到這個點,程式就會暫停在這。
https://ithelp.ithome.com.tw/upload/images/20240918/201690163V0drsI8jB.png

在IDA的上方有能夠選擇的Debugger方式,但IDA Free的選擇只有Local Windows debugger,不過這也蠻夠了,當然如果想做其他的方式也可以使用別的逆向工程軟體,例如x86dbg、WinDbg或OllyDbg等,甚至也可以用外掛神器Cheat Engine來做動態逆向工程。
https://ithelp.ithome.com.tw/upload/images/20240918/20169016gowkeZ1GXa.png

按下綠色箭頭跑起來後,程式就會停留在我們設定的Break point,如果沒有設定中斷點,程式就會一直執行到使用者輸入或程式本身的等待點。
https://ithelp.ithome.com.tw/upload/images/20240918/20169016iXPLAV3wq6.png

接著就是在Debugger選單當中的F7~F9以及F4和Ctrl+F7,這幾個都是控制程式執行的方式,和GDB的next、nexti、stepi、 step那些很像,不同的點在於IDA寫得很清楚,Continue process、Step into、Step over、Run util return和Run to cursor。
https://ithelp.ithome.com.tw/upload/images/20240918/20169016Uc2mYnfBgY.png

最後要介紹的是Windows選單,裡面可以單獨彈出希望查看的視窗,比如說打Pwn時最常用到的Stack view等等的。
https://ithelp.ithome.com.tw/upload/images/20240918/20169016XROoiKHyav.png

以上這些對於逆向或找二進制漏洞都很有幫助,IDA還有很多的功能,如果有需要,可以買個Pro來用,會有偽程式碼等更多方便的功能。


上一篇
GDB常用指令
下一篇
第一個 Reverse
系列文
從0開始的打Pwn教學14
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言